package com.example.Task;

import com.example.entity.ZyzActivity;
import com.example.service.ZyzActivityService;
import org.springframework.beans.factory.annotation.Autowired;
import org.springframework.scheduling.annotation.Scheduled;
import org.springframework.stereotype.Component;

import java.util.List;

/**
 * 活动状态定时任务
 */
@Component
public class ActivityTask {
    @Autowired
    private ZyzActivityService zyzActivityService;

    @Scheduled(cron = "0 0/10 * * * ? ")
    public void updateActivityStatus() {
        List<ZyzActivity> list = zyzActivityService.selectAll(new ZyzActivity());
        for (ZyzActivity zyzActivity : list) {
            if (zyzActivity.getActivityEnd().getTime() < System.currentTimeMillis()) {
                zyzActivity.setStatus("已结束");
            }
            if (zyzActivity.getActivityStart().getTime() < System.currentTimeMillis() && zyzActivity.getActivityEnd().getTime() > System.currentTimeMillis()){
                zyzActivity.setStatus("进行中");
            }
            ZyzActivity zyzActivity1 = new ZyzActivity();
            zyzActivity1.setId(zyzActivity.getId());
            zyzActivity1.setStatus(zyzActivity.getStatus());
            zyzActivityService.updateById(zyzActivity1);
            System.out.println("活动状态更新成功");
        }
    }
}
